/*  1:   */ package org.jetbrains.jps.model.serialization;
/*  2:   */ 
/*  3:   */

import org.jdom.Element;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.model.JpsElement;

/*  4:   */
/*  5:   */
/*  6:   */
/*  7:   */ 
/*  8:   */ public abstract class JpsElementExtensionSerializerBase<E extends JpsElement>
/*  9:   */ {
/* 10:   */   private final String a;
/* 11:   */   private final String b;
/* 12:   */   
/* 13:   */   protected JpsElementExtensionSerializerBase(@Nullable String paramString1, @NotNull String paramString2)
/* 14:   */   {
/* 15:31 */     this.b = paramString2;
/* 16:32 */     this.a = paramString1;
/* 17:   */   }
/* 18:   */   
/* 19:   */   @Nullable
/* 20:   */   public String getConfigFileName()
/* 21:   */   {
/* 22:37 */     return this.a;
/* 23:   */   }
/* 24:   */   
/* 25:   */   @NotNull
/* 26:   */   public String getComponentName()
/* 27:   */   {
/* 28:42 */     String tmp4_1 = this.b;
/* 29:42 */     if (tmp4_1 == null) {
/* 30:42 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/serialization/JpsElementExtensionSerializerBase", "getComponentName" }));
/* 31:   */     }
/* 32:42 */     return tmp4_1;
/* 33:   */   }
/* 34:   */   
/* 35:   */   public abstract void loadExtension(@NotNull E paramE, @NotNull Element paramElement);
/* 36:   */   
/* 37:   */   public void loadExtensionWithDefaultSettings(@NotNull E paramE)
/* 38:   */   {
/* 39:49 */     if (paramE == null) {
/* 40:49 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/serialization/JpsElementExtensionSerializerBase", "loadExtensionWithDefaultSettings" }));
/* 41:   */     }
/* 42:   */   }
/* 43:   */   
/* 44:   */   public abstract void saveExtension(@NotNull E paramE, @NotNull Element paramElement);
/* 45:   */ }



/* Location:           E:\idea\

 * Qualified Name:     org.jetbrains.jps.model.serialization.JpsElementExtensionSerializerBase

 * JD-Core Version:    0.7.0.1

 */